package com.evaluation.kexingcp.psycho.evaluation.sys.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 测评量表
 *
 * @author 九炜
 * @date 2024-07-01 09:52:50
 */
@TableName("evaluation_scale")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "测评量表")
public class EvaluationScaleEntity extends Model<EvaluationScaleEntity> {


	/**
	* 主键
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="主键")
    private Long id;

	/**
	* 量表名称
	*/
    @Schema(description="量表名称")
    private String scaleName;

	/**
	* 英文名称
	*/
    @Schema(description="英文名称")
    private String englishName;

	/**
	* 量表属性
	*/
    @Schema(description="量表属性")
    private String scaleProperties;

	/**
	* 量表类型
	*/
    @Schema(description="量表类型")
    private String scaleDescription;

	/**
	* 做题时长
	*/
    @Schema(description="做题时长")
    private Integer exercisesDuration;

	/**
	* 量表版本
	*/
    @Schema(description="量表版本")
    private String scaleVersion;

	/**
	* 量表介绍
	*/
    @Schema(description="量表介绍")
    private String scaleIntroduce;

	/**
	* 量表描述
	*/
    @Schema(description="量表描述")
    private String scaleDescribe;

	/**
	* 量表总览
	*/
    @Schema(description="量表总览")
    private String scaleOverview;

	/**
	* 是否预警
	*/
    @Schema(description="是否预警")
    private String scaleWarning;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 修改人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改人")
    private String updateBy;

	/**
	* 修改时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改时间")
    private LocalDateTime updateTime;

	/**
	* 删除标记
	*/
    @TableLogic
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="删除标记")
    private String delFlag;



	@TableField(exist = false)
	private String tenantType;

	@TableField(exist = false)
	private List<EvaluationQuestionsEntity> questions;

	public List<EvaluationQuestionsEntity> getQuestions() {
		return questions;
	}

	public void setQuestions(List<EvaluationQuestionsEntity> questions) {
		this.questions = questions;
	}

	public String getTenantType() {
		return tenantType;
	}

	public void setTenantType(String tenantType) {
		this.tenantType = tenantType;
	}

	/**
	* 租户ID
	*/
    @Schema(description="租户ID")
    private Long tenantId;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getScaleName() {
		return scaleName;
	}

	public void setScaleName(String scaleName) {
		this.scaleName = scaleName;
	}

	public String getEnglishName() {
		return englishName;
	}

	public void setEnglishName(String englishName) {
		this.englishName = englishName;
	}

	public String getScaleProperties() {
		return scaleProperties;
	}

	public void setScaleProperties(String scaleProperties) {
		this.scaleProperties = scaleProperties;
	}

	public String getScaleDescription() {
		return scaleDescription;
	}

	public void setScaleDescription(String scaleDescription) {
		this.scaleDescription = scaleDescription;
	}

	public Integer getExercisesDuration() {
		return exercisesDuration;
	}

	public void setExercisesDuration(Integer exercisesDuration) {
		this.exercisesDuration = exercisesDuration;
	}

	public String getScaleVersion() {
		return scaleVersion;
	}

	public void setScaleVersion(String scaleVersion) {
		this.scaleVersion = scaleVersion;
	}

	public String getScaleIntroduce() {
		return scaleIntroduce;
	}

	public void setScaleIntroduce(String scaleIntroduce) {
		this.scaleIntroduce = scaleIntroduce;
	}

	public String getScaleDescribe() {
		return scaleDescribe;
	}

	public void setScaleDescribe(String scaleDescribe) {
		this.scaleDescribe = scaleDescribe;
	}

	public String getScaleOverview() {
		return scaleOverview;
	}

	public void setScaleOverview(String scaleOverview) {
		this.scaleOverview = scaleOverview;
	}

	public String getScaleWarning() {
		return scaleWarning;
	}

	public void setScaleWarning(String scaleWarning) {
		this.scaleWarning = scaleWarning;
	}

	public String getCreateBy() {
		return createBy;
	}

	public void setCreateBy(String createBy) {
		this.createBy = createBy;
	}

	public LocalDateTime getCreateTime() {
		return createTime;
	}

	public void setCreateTime(LocalDateTime createTime) {
		this.createTime = createTime;
	}

	public String getUpdateBy() {
		return updateBy;
	}

	public void setUpdateBy(String updateBy) {
		this.updateBy = updateBy;
	}

	public LocalDateTime getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(LocalDateTime updateTime) {
		this.updateTime = updateTime;
	}

	public String getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

	public Long getTenantId() {
		return tenantId;
	}

	public void setTenantId(Long tenantId) {
		this.tenantId = tenantId;
	}
}